Пульт.Онлайн /

Архитектура системы

SCADA Пульт.Онлайн построена на гибкой и масштабируемой клиент-серверной архитектуре. Основными логическими компонентами системы являются:

  • Сервер: предоставляет пользовательский интерфейс, выполняет опрос узлов, мониторинг аварий и трендов, обеспечивает выполнение задач по расписанию и хранение исторических данных.
  • Шлюз: (опциональный компонент) обеспечивает постоянное соединение удаленных объектов с сервером, выполняет опрос узлов, мониторинг аварий и трендов, обеспечивает выполнение задач по расписанию, независимо от наличия связи с сервером.

Сервер и Шлюз представляют собой программные компоненты и могут быть запущены на широком спектре устройств, работающих под ОС Linux (от ПЛК до облачных серверов). Сервер системы может быть размещен в интернете или в локальной сети объекта (см. Сетевые топологии).

К одному серверу допускается подключение неограниченного* количества узлов и шлюзов. К одному шлюзу допускается подключение неограниченного* количества узлов и каскадных шлюзов.

* - ограничение обусловлено только производительностью устройств и количеством доступных переменных по лицензии.

Функции сервера

  • Предоставление web-интерфейса оператора
  • Предоставление web-интерфейса редактора проектов
  • Коммуникация со шлюзами
  • Опрос полевых устройств (узлов)
  • Выполнение скриптов
  • Выполнение задач по расписанию
  • Хранение исторических данных
  • Обработка аварий
  • Рассылка уведомлений пользователям

Функции шлюза

  • Коммуникация с сервером
  • Опрос полевых устройств (узлов)
  • Выполнение скриптов
  • Выполнение задач по расписанию
  • Буферизация данных при разрыве связи
  • Отправка данных на сервер

Полезная информация

  • Сервер и шлюзы "из коробки" поддерживают SSL
  • При наличии доменного имени доступна автоматическая генерация сертификатов LetsEncrypt
  • Возможен защищенный интернет-доступ к "локальным" серверам (не требуется белый IP)
  • Язык скриптов - ограниченный JS
  • Тренды хранятся в бинарных файлах в виде записей фиксированной длинны (16 байт), старые записи автоматически удаляются для экономии места на диске
  • Журнал событий (аварии, пользовательские действия и тп.) хранится в БД SQLITE
  • Взаимодействие между сервисами выполняется через UNIX-сокеты или TCP-сокеты по JSONRPC2.0/WS
  • Все компоненты системы устанавливаются в одну папку (обычно /pult) - легко организовать полное резервное копирование
  • Работа пользователей с системой осуществляется через веб-интерфейс сервера с помощью компьютеров и мобильных устройств на любой ОС (Windows, MacOS, Android, iOS, Linux и т.д.).
  • Не требуется установки дополнительного ПО и приложений - работа с системой осуществляется через обычный браузер. Все функции системы доступны онлайн, включая редактор проектов с графическим редактором мнемосхем.
  • Дистрибутивы Сервера и Шлюза полностью устанавливаются в одну папку (обычно /pult) и представляют из себя наборы исполняемых файлов, размещенных в папке services, которые взаимодействуют по протоколу JSONRPC2.0 и по сути являются микросервисами.
  • Каждый микросервис выполняет свою задачу (например, отправку уведомлений по SMS или мониторинг MQTT-переменных). Настройки микросервисов определяются конфигурационными файлами config.cfg в папке микросервиса.
  • Запуск и остановка системы осуществляется скриптами start, stop и restart, размещенными в корне папки установки. При перезагрузке устройства ПО Пульт.Онлайн запускается автоматически, веб-интерфейс сразу становится доступен на заданных портах (обычно 80, 443 или 8008).

  Email
  SMS
   fdb_list
   fdb_load
   fdb_move
   fdb_paths
   node_list
   subscribe
   var_get
   var_list
   var_set